\documentclass[twoside]{book}

% Packages required by doxygen
\usepackage{calc}
\usepackage{doxygen}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{textcomp}
\usepackage[table]{xcolor}

% Font selection
\usepackage[T1]{fontenc}
\usepackage{mathptmx}
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\usepackage{amssymb}
\usepackage{sectsty}
\renewcommand{\familydefault}{\sfdefault}
\allsectionsfont{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\renewcommand{\DoxyLabelFont}{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}

% Page & text layout
\usepackage{geometry}
\geometry{%
  a4paper,%
  top=2.5cm,%
  bottom=2.5cm,%
  left=2.5cm,%
  right=2.5cm%
}
\tolerance=750
\hfuzz=15pt
\hbadness=750
\setlength{\emergencystretch}{15pt}
\setlength{\parindent}{0cm}
\setlength{\parskip}{0.2cm}
\makeatletter
\renewcommand{\paragraph}{%
  \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@parafont%
  }%
}
\renewcommand{\subparagraph}{%
  \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@subparafont%
  }%
}
\makeatother

% Headers & footers
\usepackage{fancyhdr}
\pagestyle{fancyplain}
\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
\fancyhead[CE]{\fancyplain{}{}}
\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
\fancyhead[CO]{\fancyplain{}{}}
\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
\fancyfoot[LE]{\fancyplain{}{}}
\fancyfoot[CE]{\fancyplain{}{}}
\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Dec 13 2013 19\-:38\-:41 for Game\-Engine by Doxygen }}
\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Dec 13 2013 19\-:38\-:41 for Game\-Engine by Doxygen }}
\fancyfoot[CO]{\fancyplain{}{}}
\fancyfoot[RO]{\fancyplain{}{}}
\renewcommand{\footrulewidth}{0.4pt}
\renewcommand{\chaptermark}[1]{%
  \markboth{#1}{}%
}
\renewcommand{\sectionmark}[1]{%
  \markright{\thesection\ #1}%
}

% Indices & bibliography
\usepackage{natbib}
\usepackage[titles]{tocloft}
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{5}
\makeindex

% Hyperlinks (required, but should be loaded last)
\usepackage{ifpdf}
\ifpdf
  \usepackage[pdftex,pagebackref=true]{hyperref}
\else
  \usepackage[ps2pdf,pagebackref=true]{hyperref}
\fi
\hypersetup{%
  colorlinks=true,%
  linkcolor=blue,%
  citecolor=blue,%
  unicode%
}

% Custom commands
\newcommand{\clearemptydoublepage}{%
  \newpage{\pagestyle{empty}\cleardoublepage}%
}


%===== C O N T E N T S =====

\begin{document}

% Titlepage & ToC
\hypersetup{pageanchor=false}
\pagenumbering{roman}
\begin{titlepage}
\vspace*{7cm}
\begin{center}%
{\Large Game\-Engine }\\
\vspace*{1cm}
{\large Generated by Doxygen 1.8.5}\\
\vspace*{0.5cm}
{\small Fri Dec 13 2013 19:38:41}\\
\end{center}
\end{titlepage}
\clearemptydoublepage
\tableofcontents
\clearemptydoublepage
\pagenumbering{arabic}
\hypersetup{pageanchor=true}

%--- Begin generated contents ---
\chapter{Namespace Index}
\input{namespaces}
\chapter{Hierarchical Index}
\input{hierarchy}
\chapter{Class Index}
\input{annotated}
\chapter{File Index}
\input{files}
\chapter{Namespace Documentation}
\input{namespacemath}
\input{namespacerender}
\input{namespacesearch}
\chapter{Class Documentation}
\input{class_character}
\input{class_character_manager}
\input{structconnection}
\input{class_gameloop}
\input{class_graph}
\input{class_inf_list}
\input{class_input_manager}
\input{class_key_code}
\input{class_linked_list}
\input{class_load_shader}
\input{class_main_frame}
\input{class_main_state}
\input{class_matrix4f}
\input{class_matrix_n_mf}
\input{class_node}
\input{class_object_manager}
\input{class_pipeline}
\input{class_player}
\input{class_quaternion}
\input{class_queue}
\input{class_shell}
\input{class_stack}
\input{class_state_machine}
\input{class_state_manager}
\input{classstr_count}
\input{class_string}
\input{class_transform}
\input{class_vector3f}
\input{class_vector4f}
\input{class_wall}
\input{class_window}
\chapter{File Documentation}
\input{gameframe_8cpp}
\input{_gameloop_8cpp}
\input{_gameloop_8h}
\input{_main_frame_8cpp}
\input{_main_frame_8h}
\input{_shell_8cpp}
\input{_shell_8h}
\input{_window_8cpp}
\input{_window_8h}
\input{_render_8cpp}
\input{_render_8h}
\input{_input_manager_8cpp}
\input{_input_manager_8h}
\input{algebra_basic_8cpp}
\input{algebra_basic_8h}
\input{_graph_8h}
\input{_linked_list_8h}
\input{_queue_8h}
\input{_sim_inf_list_8h}
\input{_stack_8h}
\input{_string_8h}
\input{extra_math_8cpp}
\input{extra_math_8h}
\input{_pipeline_8cpp}
\input{_pipeline_8h}
\input{searching_8h}
\input{selection_sort_8h}
\input{_transform_8cpp}
\input{_transform_8h}
\input{_character_8cpp}
\input{_character_8h}
\input{_player_8cpp}
\input{_player_8h}
\input{_character_manager_8cpp}
\input{_character_manager_8h}
\input{_object_manager_8cpp}
\input{_object_manager_8h}
\input{_wall_8cpp}
\input{_wall_8h}
\input{_load_shader_8cpp}
\input{_load_shader_8h}
\input{_key_code_8cpp}
\input{_key_code_8h}
\input{_state_machine_8cpp}
\input{_state_machine_8h}
\input{_state_manager_8cpp}
\input{_state_manager_8h}
\input{_main_state_8cpp}
\input{_main_state_8h}
%--- End generated contents ---

% Index
\newpage
\phantomsection
\addcontentsline{toc}{part}{Index}
\printindex

\end{document}
